package org.cloud.im.admin.common;

/**
 * @Author: w.weidong.lin@abite.com
 * @Description: TODO
 * @Date: create in 2021/10/26 11:17
 */
public interface IResult<T> {
    /**
     * 成功
     */
    Integer SUCCESS_STATUS = 0;

    /**
     * 业务异常,必填字段为空，年龄为负数等
     */
    Integer BUSINESS_ERROR_STATUS = -1;

    /**
     * 服务异常，数据库连接超时，空指针等
     */
    Integer SERVICE_ERROR_STATUS = -2;

    /**
     * 请求参数非法
     */
    Integer PARAM_ERROR_STATUS = -3;

    int getStatus();

    String getMsg();

    T getData();

    String getCode();

    String getTrace();

}
